[6. El amigo netcat ]========================================================================]
[By [EL_CoNaN] La exprecion a de ser libre al igual que el pensamiento ]=====================]
[============================================================================================]

Hix estamos de nuevo con la seria sobre los amigos jeje, bueno espero convertir esta seccion 
en una seccion donde se traten los diferentes  programas que nos sirvan y nos ayudan en el 
mundo hacking, para que ustedes los conozcan mas a fondo y interactuen con dicho programa
mas facilmente. Tambien para que conozcan un poco a fondo cada programa y sus respectivas
variantes, comandos, utilidades, etc.

Un dia estaba en el irc, en un canal de hacking, cuando llega un personaje y me pregunta para
que servia netcat; este personaje me inspiro en cierto modo a hacer y describir este 
programa en este numero de la E-Zine, para ti FireSlack va dedicado esta seccion y para el 
monton de gente que siempre le gusta seguir aprendiendo y no se cansan de ello; para todos 
ustedes les presento en este numero al famoso amigo netcat.

Bueno netcat es un pequeo programa hecho para los administradores de redes y por ende 
tambien una herramienta para hackers, este programa fue creado por el ao 98 por Hobbit y lo 
puedes encontrar tanto para win como para linux y su especialidad es el Protocolo tcp/ip,
esto le da cierto poder a los usuarios del mal ponderado win en cierto protocolo, que solo 
antes tenia unix. Este programilla trabaja con lineas de comando sobre ms-dos.

Ustedes se preguntaran que es netcat? la respuesta es algo asi este programilla es una 
herramienta muy versatil, que nos permite integrar TCP/IP en scripts de tal forma, que 
podemos comunicar dos scripts que se ejecutan en maquinas diferentes y puede funcionar como 
otras utilidades, como escaners de puertos, Sniffer, montar un bot en el irc y otras 
utilidades. Aca trataremos de dejar bien claro para que puede servir netcat, y aremos algunos 
ejemplos para que entiendan mejor el funcionamiento de este programilla.

Vamos a empezar con algunos comandos o variantes, para luego dar algunos ejemplos, tecnicas y 
ocurrencias que se me vinieron a la mente cuando hice algunas pruebas con netcat y 
consulte a algunos amigos por ahi.

Algunas de las variantes de los comandos y combinaciones son:


--> -d Modo encubierto
--> -e Este modo ejecuta un programa cuando se conecta
--> -l Modo como Sniffer o esperando alguna conexion
--> -L Casi lo mismo de arriba, pero con la diferencia que este sigue escuchando cuando la
       conexion esta cerrada.
--> -n Este modo especifica una direccion numerica.
--> -o (logfile) obtiene un log, salva un log, cuando se hace alguna accion
--> -p El puerto para escuchar o para pegarce, ejplo -p 23
--> -s Este modo esta a la escucha de una ip especifica, o se pega a una ip especifica
--> -t Este modo funka como un mini o pequeo demonio telnet
--> -v Este modo es el modo verbose
--> -w Este modo especifica un tiempo para terminar

Ahi le e dejado una pequea lista de algunas de las combinaciones de netcat y su 
descripcion, si quieren averiguar mas sobre sus variantes, pueden consultar el paper que 
viene junto con el netcat :P. En esta seccion no es la finalidad dar todo hecho, asi que para 
que aprendas mas y tambien aprendan a buscar, por eso no se incluiran todas las combinaciones 
de los programas y sus comandos; para asi tambien no se queden con una sola version de los 
hechos y busquen por ustedes mismos ya que asi pueden descubrir otras cosas, que quizas uno 
no las ha descubierto.

Bueno despues de un poquito de blabla jeje, adentremonos mas en el tema con algunos ejemplos
para que entiendan mejor esta explicacion de netcat. 

Como les dije anteriormente netcat tiene varias formas de ser aprovechado y explotado, 
a continuacion pasemos a ver algunos ejemplos tanto en win como en linux, para que vean 
que me gusta explicar bien lo hago en dos sistemas, a pero antes que nada les voy a dar las 
url para que se bajen el netcat, tanto para un sistema como para otro.

Para windows, recomiendo utilizarlo en winNT, ya que en el windows9x no funka muy bien, pero 
de todos modos puedes hacer los intentos. Para bajar la version que funke en win lo haces 
desde esta url:

http://www.atstake.com/research/tools/nc11nt.zip

Para linux, si tienes debian en teoria lo tienes instalado y si es red hat o mandrake, etc. 
Lo podemos bajar de esta url:

http://www.rpmfind.net/linux/rpm2html/search.php?query=netcat

Si alguna de estas url no funcionara en su momento, tambien lo pueden buscar en el google, 
poniendo la palabra netcat y para que sistema operativo lo quieren y demas lo encuentran.

Para comprobar si esta intalado, tecleamos desde una consola de linux o desde DOS el comando 
nc y dependiendo del sistema y distro nos saldra un mensaje como este: Cmd Line: o netcat, 
segun la variante de linux, por ejemplo en suse sera netcat lo que nos saldra y en red hat 
sera Cmd Line al igual que en winNT. Cuanto te bajes el netcat  asegurate que venga con el 
comando nc o nc.exe y recomiendo que lo descomprimas en el caso de win por ejmplo en 
c:\Windows para que asi se te haga mas facil.

Bueno vamos a lo dicho a los ejemplos:

Para el primer ejemplo vamos a utilizar a netcat para que me abra puertos en mi maquina, para 
que comprendan que puede ser netcat tambien una herramienta para esto.

Y empecemos usandolo como servidor, ya tenemos netcat instalado y nos vamos a nuestra 
consola y tecleamos, en este caso lo vamos a hacer desde mi win 2000 server, mas adelante 
les doy ejemplos con linux; cuando me baje netcat lo descomprime en c:\windows, por lo tanto 
para teclear los comandos hago lo siguiente:

C:\>windows\nc  y me aparece abajo

Cmd line:

ya ahora tecleamos para que nos abra algunos puertos y ponemos el siguiente comando

Cmd line:  -l -p 5000 --> al hacer un netstat -an desde otra consola veremos que nos a abierto 
                 el puerto 5000 como le pedimos.

C:\>netstat -an

Conexiones activas

  Proto  Direccin local        Direccin remota       Estado
  TCP    0.0.0.0:135            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:445            0.0.0.0:0              LISTENING
  TCP    0.0.0.0:1025           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:1028           0.0.0.0:0              LISTENING
  TCP    0.0.0.0:5000           0.0.0.0:0              LISTENING
  TCP    127.0.0.1:1027         0.0.0.0:0              LISTENING
  TCP    127.0.0.1:1029         0.0.0.0:0              LISTENING
  UDP    0.0.0.0:135            *:*
  UDP    0.0.0.0:445            *:*
  UDP    0.0.0.0:1026           *:*
  UDP    127.0.0.1:1030         *:*

En lugar del puerto 5000 puedes usar otros puertos siempre mayor que 1024, salvo que seas 
root, entrete no, como ven es un muy buen programilla, bueno ahora probemos con telnet esto 
seria algo asi:

telnet open localhost 5000

si conectaste al nc veras que todo lo que escribes en el telnet aparece en el en la consola 
donde esta el nc y viceversa, osea estas conectado a nosotros mismos que cojo no hasta puedes
hacer un chat uno a uno xD, al cerrar la sesion de telnet igual se cierra la del nc.

Se ha perdido la conexin con el host.

Presione cualquier tecla para continuar...

y tienes que teclearlo nuevamente para volverlo hacer, para evitar esta molestia, puedes usar 
un L en ves de una l, pero netcat en modo servidor tiene un pequeo problema o mas bien dicho
limitacion que es que solo admite una conexion al mismo tiempo, pero esto lo puedes solucionar 
abriendo varios nc :P


Bueno haber ahora veamos otro ejemplo, un poquito mas complejo.

ejecutamos notepad.exe y creamos un archivo de texto que se llame conan.txt o el nombre que 
tu le quieras dar, en este archivo de texto pones lo que se te ocurra, por ejemplo algo asi 
"Hola cumpas que tal estan hoy" luego cuando ya tengas creado ese archivo haces lo 
siguiente:

C:\>type conan.txt | windows\nc -l -p 5000


luego nos hacemos un telnet a nosotros mismos en el puerto 5000 y cuando conecte al puerto 
nos mostrara el mensaje que hemos escrito en conan.txt, esto quedara hasta que saquemos el 
telnet del puerto o los desconectemos.

Otro ejemplo, que es un poco peligroso para los WINNT es la que se a descubierto hace ya un 
tiempo y que se hace asi:


Cmd line: -l -e cmd.exe -p 5000

esto nos daria una shell en el puerto 5000 con permisos de administer al conectar a dicho 
puerto.

Bueno ahora subamos un poquito mas la vara enviemos un mail utilizando netcat, que les 
parece? a jeje.

Ya lo primero que tenemos que hacer es irnos al notepad.exe o al vi en linux y crear un 
archivo de texto que contenga lo siguiente:

helo host.cl
mail from: conan <conan@el_maldito.com
rcpt to: the_aseck@hotmail.com --> el destinatario del mail
data
subject: esto es una demanda
X-Mailer: conan mail for Linux 6.0 --> jeje para confundir un poquito
Hola aseck te escribimos de la brigada del ciber crimen de la policia de investigaciones, 
para decirte que tienes una demanda pendiente aca y te estamos esperando
. ---> un vil punto
quit

El archivo de texto le pondremos larry.txt o el nombre que ustedes quieran y  estamos listo 
con el mail, yo creo que mas de una ves han tratado de enviar un mail, un poco anonimo por 
telnet, por lo que la explicacion de lo escrito arriba no debe generar algun desgaste mental 
creo yo o nop?

ahora para enviar el mail seria de la siguiente forma:

Desde linux

cat larry.txt | nc smtp.servidor.com 25   

desde winNT

C:\> type larry.txt| nc smtp.servidor.com 25


Bueno Ahora vamos hacer otra practica, vamos a  sustituir el telnet por netcat, escribimos en 
una sesion de DOS, o a bash que arranque en modo servidor ejemplo:

Cmd line: -l -p 6000

y en otra secion un cliente nc localhost 6000 y nos conecta y como veran ponemos cualquier 
cosa y eso sale en la otra secion y viceversa.


Ahora utilizaremos netcat como escaniador  de puertos, aunque no es muy bueno este programilla 
como escaner igual trae esta opcion y que la implementa como un full escan.

seria de la siguiente manera:

primero iniciamos netcat ya sea desde win o linux y luego ponemos esto:

Cmd line: -z -v www.host.cl 13-139

bueno esto haria que netcat escaniace  www.host.cl desde el puerto 13 al 139 y como netcat 
implementa el tipo de escaneo full , si un puerto estuviese abierto intentaria conectar. Se 
me a ocurrido una idea pesquemos el netcat y arranquemos varios servidores en nuestra maquina 
o pc algo asi:

Cmd line: -l -v -p 8000
esto nos responde listening on [any] 8000 ...

-l -v -p 8001 y nos reponde listening on [any] 8001 ...

-l -v -p 8003 y nos reponde listening on [any] 8003 ...

y asi podriamos abrir artos netcat y abrir artos puertos, y ahora hagamoslos el escaneo a 
nosotros mismos esto seria algo asi: 

Cmd line: -z -v larry  8000-8010  (larry es el nombre de mi pc)
larry [127.0.0.1] 8003 (?) open
larry [127.0.0.1] 8001 (?) open
larry [127.0.0.1] 8000 (?) open


y como ven hicimos el escaneo desde del 8000 hasta el 8010, y como se acuerdan habiamos 
abiertos tres puertos el 8000, 8001 y el 8003 el cual netcat en modo escaner detecto que 
estaban abiertos, eso si no recomiendo a netcat como escaner de puertos, ya que es muy lento 
y mula es mucho mejor nuecero amigo  Nmap.

Bueno para terminar veamos un ultimo  ejemplo aca, supongamos que encontramos un host con el 
puerto 79 abierto y haremos algo interesante con este programillas llamado netcat, que seria 
algo asi:


Cmd line:  -v tontin.cl 79 user.txt conanlog.txt

Esta orden le dice a netcat que se conecte en modo verbose al sitio web tontin.cl en el 
puerto 79 y envie el contenido del user.txt y esta sera a la ves guardado en un log en 
nuestra maquina de nombre conanlog.txt. esto nos sirve de mucho a la hora de sacar info de 
algun servidor, ya que obtendriamos una lista de los usuarios del sistema; para luego hacer 
un ataque por fuerza bruta.

Ya sabes como los hackers se hacen con muchos sistemas en un poco tiempo, una de las tecnicas 
que implementan o que les ayuda es este famoso programilla.

saludos a todos y espero que hallan disfrutado de este humilde texto y bueno esto seria todo, 
espero haber dejado con una nocion a todos los que leyeron esto sobre el amigo netcat, si 
tienes alguna duda o lo que sea solo escribe a cdt_911@hotmail.com mencion conan y yo te lo 
repondere.


